home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 34.zip / BS1 part 34 / Weubblers handler.adf / examples / handler.h < prev    next >
C/C++ Source or Header  |  1988-12-16  |  2KB  |  105 lines

  1. #include <stdio.h>
  2. #include <exec/types.h>
  3. #include <exec/memory.h>
  4. #include <exec/tasks.h>
  5. #include <devices/trackdisk.h>
  6. #include <devices/timer.h>
  7. #include <exec/io.h>
  8. #include <exec/devices.h>
  9. #include <exec/interrupts.h>
  10. #include <exec/ports.h>
  11. #include <libraries/dos.h>
  12. #include <libraries/dosextens.h>
  13. #include <functions.h>
  14. #include <hardware/custom.h>
  15. #include <hardware/adkbits.h>
  16. #include <hardware/cia.h>
  17. #include <hardware/intbits.h>
  18. #include <hardware/dmabits.h>
  19. #include <exec/nodes.h>
  20. #include <exec/lists.h>
  21. #include <exec/libraries.h>
  22. #include <devices/console.h>
  23. #include <libraries/filehandler.h>
  24. #include <intuition/intuitionbase.h>
  25.  
  26. #define ActionRead 0
  27. #define ActionWrite 1
  28. #define ActionStop 2
  29. #define ActionRawRead 3
  30. #define ActionDie 4
  31. #define ActionStart 5
  32. #define ActionDiskChange 6
  33. #define ActionAcceptDisk 7
  34. #define ActionIdentify 8
  35. #define ActionWriteProtect 9
  36. #define ActionQueryDisk 10
  37. #define ActionSeek 11
  38. #define ActionRawWrite 12
  39. #define ActionSetSync 13
  40. #define ActionMultWrite 14
  41. #define ActionAddHandler 15
  42. #define ActionRemHandler 16
  43.  
  44. #define ErrorDiskChanged -1
  45. #define ErrorDriveNotValid -2
  46. #define ErrorPortShutdown -3
  47. #define ErrorNoDiskPresent -4
  48. #define ErrorDiskWriteProtected -5
  49. #define ErrorReadError -6
  50. #define ErrorWriteError -7
  51. #define ErrorActionNotKnown -8
  52.  
  53. #define TypeAmigaDos 0
  54. #define TypeStandardAddress 1
  55. #define TypeStandardData 2
  56. #define TypeNotKnown 3
  57.  
  58. #define WaitTime 5
  59. #define TrackLen 7000
  60. #define StandardSync 0x4489
  61. #define StandardDataMark 0xfb
  62. #define StandardAddrMark 0xfe
  63.  
  64. extern long DriveValid[4];
  65. extern long DiskChangeCount[4];
  66. extern WORD SYNC;
  67. extern int ADos;
  68. extern int ExitFlag;
  69.  
  70. struct MotorMessage
  71. {
  72.  struct Message Msg;
  73.  long Action;
  74.  long Error;
  75.  long Drive;
  76.  char * Destination;
  77.  long Track;
  78.  long Head;
  79.  long Sector;
  80.  long NumSecs;
  81.  long UnUsed[5];
  82. };
  83.  
  84. extern struct MotorMessage *MotorMsg;
  85. extern struct MsgPort *MyPort;
  86. extern struct MsgPort *MotorPort;
  87.  
  88. extern unsigned short mfm[0x56];
  89. extern unsigned short givemfm[16];
  90.  
  91. extern char * AllocNormalMem();
  92. extern char * AllocChipMem();
  93. extern char * AllocPublicMem();
  94. extern void DeleteMotorMsg();
  95. extern struct MotorMessage * InitMotorMsg();
  96. extern void dualprint();
  97. extern unsigned short * AmigaSectorDecode();
  98. extern unsigned char MfmDec();
  99. extern void InitMfm();
  100. extern unsigned short StandardMfmEnc();
  101. extern void StandardMfmDecode();
  102. extern void AmigaMfmDecode();
  103. extern int TestDisk();
  104. extern int CalcCrc();
  105.